Data security is extremely important in many storage applications. When data is no longer needed on an electronic storage device, or in the event of the theft of the device, the data must be permanently removed. This removal process must make it impossible to ever recover the data, and needs to be done very quickly and reliably. In most conventional devices, and in Solid State Drives (SSDs) in particular, just deleting the data only removes its name from the directory or file table. The user data remains until overwritten by new data. Also, reformatting the SSD also leaves data intact. Furthermore, just writing over the data once does not completely erase the previous data as information as to the previous data can still exist as small variations in the bit levels. Indeed, secure erasure techniques, such as those developed by the government require writing over the data multiple times to remove the data. Accordingly, there is a need to erase all user data in allocated blocks, file tables, and data in reallocated defective blocks completely, quickly, and reliably.
Conventional techniques for data sanitization have been described. One technique is Secure Erase ATA (Advanced Technology Attachment) command, to a target storage device which overwrites all data in allocated blocks, file tables, and data in reallocated defective blocks. Overwriting can be done to meet a variety of requirements established by different standard organizations, with each organization setting its own method of multiple overwriting with different sequences. However, writing to all blocks multiple times takes a significant amount of time, e.g., 5 seconds per 32 GB of data, which is too long for many applications.
Another conventional technique that is much faster is to use a drive with self-encryption, and just overwrite the encryption key. This technique may increase the speed of data sanitization, but the data remains on the drive. Accordingly, although the data may have been encrypted with advantageous encryption algorithms, there is no guarantee that the encryption method may never be broken.
Another conventional method that has improved performance speed is to apply a very high voltage to the input of the SSD, thus destroying the SSD. However, applying a very high voltage to the input of the SSD will typically destroy only the input circuitry since this circuitry quickly vaporizes, resulting in broken connections that fail to apply the very high voltage to all the data blocks. Accordingly, there is the potential to read data within blocks of the SSD not having the very high voltage applied.
It is desirable to provide a fast, reliable, permanent removal of all data on a storage device.